Errors can occur in the communication of data, whether due to the transmission/reception protocol used, or characteristics of the media or network on which the communication occurs. Various techniques exist to reduce errors in such transmission.
Some existing communication protocols provide only partial error protection for the packet transmitted. For instance, the Interlaken protocol includes cyclic redundancy check (CRC) error detection codes to detect errors only in bits [63:0] of the data words and control words. The Interlaken interface was developed to address some of the shortcomings of existing high-speed, parallel packet-oriented data interfaces such as the IEEE 802.3 XAUI and OIF SPI 4.2.
Interlaken uses a 64B/67B block code structure in which each block contains 64-bits of payload data or control information and 3-bits of block framing information. While bit 63 is separate from the framing bits, it is used as a control bit, to distinguish between an Idle/Burst control word and a Framing Layer Control word. An example of the Interlaken 64B/67B block format for an idle/burst control word is illustrated in FIG. 1.
The CRC-24 used in Interlaken does not cover the framing bits of the data words and idle/burst control words, nor does it cover the framing layer control words. Diagnostic words containing a CRC-32 are transmitted periodically on each lane to detect per-lane errors. The CRC-32 also does not cover the framing bits on that lane.
The information included in the framing bits is used for decoding purposes in order to properly interpret the data included in the payload portion. Therefore, a bit error in the framing bits can result in significant data corruption due to misinterpretation of the packet type, packet format, or whether the packet is inverted. For example, errors can cause data words to be regarded as control words, and vice versa, or could cause the control word type to be misinterpreted.
The Interlaken protocol specification does not describe a method for detecting errors in the framing portion of the word, nor does it specify an appropriate course of action for rectifying or correcting an error when it is detected.